package com.hailiang.study.apache.commons.collections4;

import org.apache.commons.collections4.CollectionUtils;
import org.junit.Test;

import java.util.ArrayList;
import java.util.Collections;
import java.util.List;

/**
 * 并集
 * @author hailiang.jiang
 * @date 2022年07月02 10:30
 */
public class CollectionUtils_collate {

    /**
     * 获取两个集合的并集
     */
    @Test
    public void test_collate_01() {
        List<String> list01 = new ArrayList<>();
        list01.add("a");
        list01.add("b");
        list01.add("c");
        list01.add("1");

        List<String> list02 = new ArrayList<>();
        list02.add("1");
        list02.add("2");
        list02.add("c");
        list02.add("d");
        list02.add("f");

        // 先排序
        Collections.sort(list01);
        Collections.sort(list02);

        // 合并两个集合，默认情况不去重
        System.out.println(CollectionUtils.collate(list01, list02));

        // 合并两个集合，指定includeDuplicates=false，告知合并结果要去重
        System.out.println(CollectionUtils.collate(list01, list02, false));
    }

}
